/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package controllers;
import play.*;
import play.mvc.*;
import play.data.*;
import static play.data.Form.*;
import play.db.jpa.*;
import views.html.seguridad.*;
import models.*;

public class Seguridad extends Controller {
    
    public static Result GO_HOME_SEGURIDAD = redirect(
        routes.Seguridad.list(0,"login","asc", "")
    );    

    public static Result blank() {
        return GO_HOME_SEGURIDAD;
    }   


@Transactional(readOnly=true)
public static Result newUser() {
    Form<Usuario> usuarioForm = form(Usuario.class);
    return ok(createForm.render(usuarioForm));
}

 @Transactional(readOnly=true)
public static Result list(int page, String sortBy, String order, String filter) {
    return ok(
            list.render(
                Usuario.page(page, 10, sortBy, order, filter),
                sortBy, order, filter
            )
    );
}

/**
* Creacion de nuevo usuario
*/
@Transactional
public static Result save() {
    Form<Usuario> usuarioForm = form(Usuario.class).bindFromRequest();
    
    System.out.println("FORMULARIO de USUARIO: " + usuarioForm);
    if(usuarioForm.hasErrors()) {
        return badRequest(createForm.render(usuarioForm));
    }
    
    System.out.println("No hay errores");
    if (usuarioForm.get().esAdministrador != null)
    {
        usuarioForm.get().administrador = new Integer(1);
    }
    else 
    {
        usuarioForm.get().administrador = new Integer(0);
    }
    
    usuarioForm.get().save();
    flash("success", "Usuario " + usuarioForm.get().login + " ha sido creado.");
    
    return ok(
            list.render(
                Usuario.page(0, 10, "login", "asc",""),
                "login", "asc",""
            )
    );
    
    }


}